const cp = require('child_process');
const {resolve} = require('path');


;(async () => {
    const script = resolve(__dirname, '../crawler/trailer-list.js');
    const child = cp.fork(script, [])  //  派生子进程
    let invoked = false;

    //  当子进程挂掉的时候
    child.on('error', err => {
        if (invoked) return

        invoked = true;

        console.log(err);
    })

    //  当子进程退出的时候
    child.on('exit', code => {
        if (invoked) return

        invoked = true;
        let err = code === 0 ? null : new Error('exit code' + code)
        console.log(err);
    })

    //  当子进程通信的时候  , data是从主进程send过来的result
    child.on('message',data=>{
        let result = data.result;

        console.log(result);
    })

})()